Using Clp(fd) to Support Instruction Schedulers for Multi-issue Pipelined Architectures. Using Clp(fd) to Support Instruction Schedulers for Multi-issue Pipelined Architectures
نویسندگان
چکیده
In the conventional models of pipelined architectures, pipeline connicts are generally avoided through techniques like reservation tables. They are intended to describe the run time of instructions for which the delays between the execution stage and the fetch one is a constant depending only on the instruction. In fact actual superscalar processors don't comply this model since such delays are context dependent. The proposed approach fully supports slackness in the run time ow of execution. We advocate a model that is based on the concurrency of tasks performed by pipelines rather than the concurrent usage of resources as most current approaches do. The scheduling algorithm is based on the properties of this model. Since most of the constraints can be stated as linear equations or inequations, an implementation using CLP with nite domains is straightforward. Prototypage de r eordonnanceurs d'instructions pour machines superscalaires en clp(FD). R esum e : Dans les appproches classiques de mod elisation de machines pipelin ees, les connits sont gen eralement trait es en utilisant des techniques de tables de r eser-vation. Elles sont fond ees sur l'hypoth ese que le d elai entre la date d'ex ecution et la date d'alimentation dans le pipe est une constante qui ne d epend que de l'instruction. Ceci ne correspond pas au processus eeectif d'ex ecution dans une machine super-scalaire o u les d elais peuvent varier pour une m^ eme instruction suivant le contexte. Nous proposons un mod ele qui prend en compte une telle elasticit e. Il permet de formaliser a la fois les d ependances entre instructions d'une m^ eme s equence et les contraintes li ees a l'ex ecution eeective de celles-ci dans le processeur. Il s'appuie sur une mod elisation de la concurrence des t^ aches eeectu ees par les pipelines plut^ ot que sur celle de l'usage concurrent des ressources comme dans la plupart des approches usuelles. A ce mod ele nous associons un algorithme de r eordonnancement qui s'appuie sur les propri etes d eenies avec le mod ele d'ex ecution. Cet algorithme peut s'implanter de facon tr es directe en CLP avec domaines nis car ces derniers constituent un cadre appropri e pour traiter l' elasticit e dans le pipeline.
منابع مشابه
Constraint Programming Techniques for Optimal Instruction Scheduling
Modern processors have multiple pipelined functional units and can issue more than one instruction per clock cycle. This puts great pressure on the instruction scheduling phase in a compiler to expose maximum instruction level parallelism. Basic blocks and superblocks are commonly used regions of code in a program for instruction scheduling. Instruction scheduling coupled with register allocati...
متن کاملA Parallel Pipelined Computer Architecture for Digital Signal Processing
This paper presents a parallel pipelined computer architecture and its six network configurations targeted for the implementation of a wide range of digital signal processing (DSP) algorithms described by both atomic and large grain data flow graphs. The proposed architecture is considered together with programmability, yielding a system solution that combines extensive concurrency with simple ...
متن کاملPipelined Architectures for the Frequency Domain Linear Equalizer
In this paper, novel pipelined architectures for the implementation of the frequency domain linear equalizer are presented. The Frequency Domain (FD) LMS algorithm is utilized for the adaptation of equalizer coefficients. The pipelining of the FD LMS linear equalizer is achieved by introducing an amount of time delay into the original adaptive scheme, and following proper delay retiming. Simula...
متن کاملBasic-block Instruction Scheduling Using Reinforcement Learning and Rollouts
The execution order of a block of computer instructions on a pipelined machine can make a difference in its running time by a factor of two or more. In order to achieve the best possible speed, compilers use heuristic schedulers appropriate to each specific architecture implementation. However, these heuristic schedulers are time-consuming and expensive to build. We present empirical results us...
متن کاملReducing the complexity of instruction-level power models for VLIW processors
Aim of this paper is to propose a high-level power exploration framework based on an instruction-level energy model for VLIW (Very Long Instruction Word) architectures. More specifically, the present paper deals with the reduction of the complexity of the energy model of K -issue VLIW processors from exponential with respect to the number of operations within the Instruction Set O(|I S A|K ) to...
متن کامل